home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1992 June: ROMin Holiday / ADC Developer CD (1992-06) (''ROMin Holiday'')_iso / Developer Connection - 06-1992.iso / Developer Essentials / MPW Interfaces & Libraries / CIncludes / Serial.h < prev    next >
Encoding:
C/C++ Source or Header  |  1992-01-29  |  2.0 KB  |  102 lines  |  [TEXT/MPS ]

  1.  
  2. /************************************************************
  3.  
  4. Created: Sunday, September 15, 1991 at 8:43 PM
  5.  Serial.h
  6.  C Interface to the Macintosh Libraries
  7.  
  8.  
  9.   Copyright Apple Computer, Inc. 1985-1991
  10.   All rights reserved
  11.  
  12. ************************************************************/
  13.  
  14.  
  15. #ifndef __SERIAL__
  16. #define __SERIAL__
  17.  
  18. #ifndef __TYPES__
  19. #include <Types.h>
  20. #endif
  21.  
  22.  
  23. enum {
  24.  
  25.  baud300 = 380,
  26.  baud600 = 189,
  27.  baud1200 = 94,
  28.  baud1800 = 62,
  29.  baud2400 = 46,
  30.  baud3600 = 30,
  31.  baud4800 = 22,
  32.  baud7200 = 14,
  33.  baud9600 = 10,
  34.  baud19200 = 4,
  35.  baud57600 = 0,
  36.  stop10 = 16384,
  37.  stop15 = -32768,
  38.  stop20 = -16384,
  39.  noParity = 0,
  40.  oddParity = 4096,
  41.  evenParity = 12288,
  42.  data5 = 0,
  43.  data6 = 2048,
  44.  data7 = 1024
  45. };
  46. enum {
  47.  data8 = 3072,
  48.  ctsEvent = 32,
  49.  breakEvent = 128,
  50.  xOffWasSent = 128,
  51.  dtrNegated = 64,
  52.  ainRefNum = -6,        /*serial port A input*/
  53.  aoutRefNum = -7,        /*serial port A output*/
  54.  binRefNum = -8,        /*serial port B input*/
  55.  boutRefNum = -9        /*serial port B output*/
  56. };
  57.  
  58. enum {sPortA,sPortB};
  59. typedef unsigned char SPortSel;
  60.  
  61.  
  62. struct SerShk {
  63.  char fXOn;                /*XOn flow control enabled flag*/
  64.  char fCTS;                /*CTS flow control enabled flag*/
  65.  unsigned char xOn;        /*XOn character*/
  66.  unsigned char xOff;    /*XOff character*/
  67.  char errs;                /*errors mask bits*/
  68.  char evts;                /*event enable mask bits*/
  69.  char fInX;                /*Input flow control enabled flag*/
  70.  char fDTR;                /*DTR input flow control flag*/
  71. };
  72.  
  73. typedef struct SerShk SerShk;
  74.  
  75. struct SerStaRec {
  76.  char cumErrs;
  77.  char xOffSent;
  78.  char rdPend;
  79.  char wrPend;
  80.  char ctsHold;
  81.  char xOffHold;
  82. };
  83.  
  84. typedef struct SerStaRec SerStaRec;
  85.  
  86.  
  87. #ifdef __cplusplus
  88. extern "C" {
  89. #endif
  90. pascal OSErr SerReset(short refNum,short serConfig); 
  91. pascal OSErr SerSetBuf(short refNum,Ptr serBPtr,short serBLen); 
  92. pascal OSErr SerHShake(short refNum,const SerShk *flags); 
  93. pascal OSErr SerSetBrk(short refNum); 
  94. pascal OSErr SerClrBrk(short refNum); 
  95. pascal OSErr SerGetBuf(short refNum,long *count); 
  96. pascal OSErr SerStatus(short refNum,SerStaRec *serSta); 
  97. #ifdef __cplusplus
  98. }
  99. #endif
  100.  
  101. #endif
  102.